/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package pe.edu.upc.dai.grupovictor.service.impl;

import java.util.List;
import pe.edu.upc.dai.grupovictor.dao.SistemaEvaluacionDao;
import pe.edu.upc.dai.grupovictor.dao.impl.SistemaEvaluacionDaoImpl;
import pe.edu.upc.dai.grupovictor.model.SistemaEvaluacion;
import pe.edu.upc.dai.grupovictor.service.SistemaEvaluacionService;


public class SistemaEvaluacionServiceImpl implements SistemaEvaluacionService {

    private SistemaEvaluacionDao sistemaEvaluacionDao;

    public SistemaEvaluacionServiceImpl() {
        sistemaEvaluacionDao = new SistemaEvaluacionDaoImpl();
    }

    public SistemaEvaluacion seleccionarPorCodigo(Long codigo) {
        return sistemaEvaluacionDao.seleccionarPorPrimaryKey(codigo);
    }

    public void insertar(SistemaEvaluacion sistemaEvaluacion) {
        sistemaEvaluacionDao.insertar(sistemaEvaluacion);
    }

    public void actualizar(SistemaEvaluacion sistemaEvaluacion) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    public void eliminar(SistemaEvaluacion sistemaEvaluacion) {
        SistemaEvaluacion tmp = sistemaEvaluacionDao.seleccionarPorPrimaryKey(sistemaEvaluacion.getIdSistemaEvaluacion());
        if(tmp!=null){
            if("EMI".equalsIgnoreCase(tmp.getEstado())){
                throw new RuntimeException("No puede eliminarse un sistema de evaluacion Emitido");
            }
        }

        sistemaEvaluacionDao.eliminar(sistemaEvaluacion);
    }

    public List<SistemaEvaluacion> seleccionarTodos() {
        return sistemaEvaluacionDao.seleccionarTodos();
    }

}
